/*
 * user.h
 *
 *  Created on: 2025年6月30日
 *      Author: Administrator
 */

#ifndef USER_H_
#define USER_H_
#include "MyFreertos.h"
#include <stdio.h>
#include <string.h>

///////////////////////////////////////MVB
extern uint8_t CRCBYTE137[30];
extern uint8_t CRCBYTE702[30];
extern uint8_t CRCBYTE706[30];
extern uint8_t CRCBYTE421[30];
extern uint8_t CRCBYTE021[30];
extern uint8_t CRCBYTE703[30];
extern uint8_t CRCBYTE707[30];

extern uint16_t M_MVB421[16];
extern uint16_t M_MVB021[16];
extern uint16_t M_MVB703[16];
extern uint16_t M_MVB707[16];

extern uint16_t CRC_MVB421;
extern uint16_t CRC_MVB021;
extern uint16_t CRC_MVB703;
extern uint16_t CRC_MVB707;
extern uint8_t CRC_MVB421_err;
extern uint8_t CRC_MVB021_err;
extern uint8_t CRC_MVB703_err;
extern uint8_t CRC_MVB707_err;

extern uint16_t MVB137[16];
extern uint16_t MVBRCU[16];
extern uint16_t MVB421[16];
extern uint16_t MVB021[16];

extern uint16_t MVB702[16];
extern uint16_t MVB706[16];
extern uint16_t MVBATO[16];
extern uint16_t MVB703[16];
extern uint16_t MVB707[16];
//////////////////////////////////////CAN
extern uint8_t CAN91[8];
extern uint8_t CAN92[8];

extern uint8_t EBV11[8];
extern uint8_t EIU31[8];
extern uint8_t EIU32[8];
extern uint8_t EIU33[8];
//uint8_t EIU34[8];
/**20230526_begin***********************************************************/
extern uint8_t EIU3A[8];
/**20230526_end***********************************************************/
extern uint8_t EIUA3[8];
extern uint8_t EIUA4[8];
extern uint8_t EIUA5[8];
extern uint8_t EIUA6[8];
extern uint8_t BPCM61[8];
extern uint8_t BPCM62[8];
extern uint8_t BPCM63[8];
extern uint8_t BCCM71[8];
extern uint8_t BCCM72[8];
extern uint8_t BCCM73[8];
extern uint8_t BCCM74[8];
extern uint8_t IBCM81[8];
extern uint8_t IBCM82[8];

extern uint8_t EBV11_A[8];
extern uint8_t EIU31_A[8];
extern uint8_t EIU32_A[8];
extern uint8_t EIU33_A[8];
//uint8_t EIU34_A[8];
/**20230526_begin***********************************************************/
extern uint8_t EIU3A_A[8];
/**20230526_end***********************************************************/
extern uint8_t EIUA3_A[8];
extern uint8_t EIUA4_A[8];
extern uint8_t EIUA5_A[8];
extern uint8_t EIUA6_A[8];
extern uint8_t BPCM61_A[8];
extern uint8_t BPCM62_A[8];
extern uint8_t BPCM63_A[8];
extern uint8_t BCCM71_A[8];
extern uint8_t BCCM72_A[8];
extern uint8_t BCCM73_A[8];
extern uint8_t BCCM74_A[8];
extern uint8_t IBCM81_A[8];
extern uint8_t IBCM82_A[8];

extern uint8_t EBV11_B[8];
extern uint8_t EIU31_B[8];
extern uint8_t EIU32_B[8];
extern uint8_t EIU33_B[8];
//uint8_t EIU34_B[8];
/**20230526_begin***********************************************************/
extern uint8_t EIU3A_B[8];
/**20230526_end***********************************************************/
extern uint8_t EIUA3_B[8];
extern uint8_t EIUA4_B[8];
extern uint8_t EIUA5_B[8];
extern uint8_t EIUA6_B[8];
extern uint8_t BPCM61_B[8];
extern uint8_t BPCM62_B[8];
extern uint8_t BPCM63_B[8];
extern uint8_t BCCM71_B[8];
extern uint8_t BCCM72_B[8];
extern uint8_t BCCM73_B[8];
extern uint8_t BCCM74_B[8];
extern uint8_t IBCM81_B[8];
extern uint8_t IBCM82_B[8];

extern uint8_t EBV_Can1_cnt;
extern uint8_t EBV_Can2_cnt;
extern uint8_t EIU_Can1_cnt;
extern uint8_t EIU_Can2_cnt;
extern uint8_t BPCM_Can1_cnt;
extern uint8_t BPCM_Can2_cnt;
extern uint8_t BCCM_Can1_cnt;
extern uint8_t BCCM_Can2_cnt;
extern uint8_t IBCM_Can1_cnt;
extern uint8_t IBCM_Can2_cnt;


extern unsigned short c_Crc16Table_aU16[256];
void UserLoop();
uint16_t Comn_F_GetCRC16(uint16_t inTable_aU16[256],uint16_t inCRCInit_U16,uint8_t inBuf_aU8[],uint8_t inLEN_I32);
#endif /* USER_H_ */
